NoC (Network-on-Chip) is known as a technology for data communication between IP (intellectual property) cores in a data processing apparatus (see NPL (Non Patent Literature) 1). This technology applies computer networking theory to communication between modules on a chip.
A system using NoC generally has a plurality of data processing modules (IP cores) and a plurality of routers (switches). The data processing modules send and receive data via the routers. Communication paths for data can be set from firmware or the like. As a result, for example, the sequence of data processing modules which process data can be dynamically changed, and therefore, a flexible data processing apparatus can be realized.
Moreover, because the plurality of data processing modules carries out communications via the routers, it is unnecessary to directly connect the plurality of data processing modules together by signal lines exhaustively. For this reason, wiring can be reduced. Further data processing modules can be added with ease, and hence extensibility is great.
The routers each have a plurality of input ports and a plurality of output ports and select a suitable output port for data input to each input port and output the data. Conventionally, when selecting an output port as an output destination of data, routers generally refer to information attached to received data. For example, Chapter 10 of NPL 1 and NPL (Non Patent Literature) 2 describe a technique of adding address information for identifying a transmission destination to communication data and performing routing based on the address information.
There has also been proposed a method as a energy-saving technology in a NOC structure that stops operation of a link by shutting off power supply to a buffer (see NPL 2).